// 示例：使用 Promise 链式调用
function doFirstThing() {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            console.log('第一步完成');
            resolve('第一个结果');
        }, 1000);
    });
}

function doSecondThing(result) {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            console.log(`第二步完成，接收结果: ${result}`);
            resolve('第二个结果');
        }, 1000);
    });
}

function doThirdThing(result) {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            console.log(`第三步完成，接收结果: ${result}`);
            resolve('最终结果');
        }, 1000);
    });
}

// Promise 链式调用示例
doFirstThing()
    .then((result) => doSecondThing(result))
    .then((newResult) => doThirdThing(newResult))
    .then((finalResult) => {
        console.log('最终结果:', finalResult);
    })
    .catch((error) => {
        console.error('链中某处出错:', error);
    });